From 13dde37355c042d5047b823614a1d3a89ca22487 Mon Sep 17 00:00:00 2001 From: Alastair Tse Date: Fri, 17 Nov 2006 17:03:59 +0000 Subject: [PATCH] [XEND] Revert changes in changeset 12328 Mistakenly reverted some fixes for rebooting, un-reverting. Signed-off-by: Alastair Tse --- tools/python/xen/xend/XendDomain.py | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/tools/python/xen/xend/XendDomain.py b/tools/python/xen/xend/XendDomain.py index 79b5aec1a6..0bf1b63a37 100644 --- a/tools/python/xen/xend/XendDomain.py +++ b/tools/python/xen/xend/XendDomain.py @@ -377,24 +377,12 @@ class XendDomain: @rtype: None """ - # update information for all running domains - # - like cpu_time, status, dying, etc. running = self._running_domains() - running_domids = [d['domid'] for d in running if d['dying'] != 1] - - # remove domains that are not running from active domain list. - # The list might have changed by now, because the update call may - # cause new domains to be added, if the domain has rebooted. We get - # the list again. - for domid, dom in self.domains.items(): - if domid not in running_domids and domid != DOM0_ID: - self._remove_domain(dom, domid) - # Add domains that are not already tracked but running in Xen, # and update domain state for those that are running and tracked. for dom in running: domid = dom['domid'] - if domid in self.domains and dom['dying'] != 1: + if domid in self.domains: self.domains[domid].update(dom) elif domid not in self.domains and dom['dying'] != 1: try: @@ -408,6 +396,19 @@ class XendDomain: log.exception("Hard destruction of domain failed: %d" % domid) + # update information for all running domains + # - like cpu_time, status, dying, etc. + # remove domains that are not running from active domain list. + # The list might have changed by now, because the update call may + # cause new domains to be added, if the domain has rebooted. We get + # the list again. + running = self._running_domains() + running_domids = [d['domid'] for d in running if d['dying'] != 1] + for domid, dom in self.domains.items(): + if domid not in running_domids and domid != DOM0_ID: + self._remove_domain(dom, domid) + + def _add_domain(self, info): """Add a domain to the list of running domains -- 2.30.2